Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Определение IP-адреса машины (fmr)
Author Message
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Thu Nov 13, 2003 2:21 pm ()
   Post subject: Определение IP-адреса машины
Reply with quote

Возможно ли после установки Денвера в локальной сети определить адрес машины (которая запрашивает сервер) при помощи $REMOTE_ADDR? У меня показывает 127.0.0.1, а не 10.1.200.32, например
Back to top
View user's profile Send private message Send e-mail
Дмитрий Эсс
Участник форума



Joined: 06 Jul 2003
Posts: 2533
Карма: 3
   поощрить/наказать

Location: Таллинн, Эстония

PostPosted: Thu Nov 13, 2003 2:34 pm (спустя 12 минут)
   Post subject:
Reply with quote

fmr wrote:
У меня показывает 127.0.0.1, а не 10.1.200.32, например
Так и будет. Посмотрите, что у Вас стоит в BindAddress. Доступ к апачу открыт полько из локальной сети, следовательно, и адреса только локальные.
Back to top
View user's profile Send private message Send e-mail
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Thu Nov 13, 2003 2:56 pm (спустя 21 минуту)
   Post subject:
Reply with quote

Дмитрий Эсс wrote:
адреса только локальные
Это понятно, да дело в том, что кроме 127.0.0.1 ничего не показывает, никакого другого адреса даже при BindAddress*. Дело в том, что я делаю тестирование по английскому языка на нескольких машинах и хочу, чтобы после регистрации юзера адрес машины записывался в базу, чтобы нельзя было провести повторную регистрацию на этой машине, пока не сдан тест. Если так адрес определить нельзя, то придется возиться с куками. Может еще подскажете какое-нибудь решение проблемы?
Back to top
View user's profile Send private message Send e-mail
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Thu Nov 13, 2003 10:12 pm (спустя 7 часов 16 минут)
   Post subject:
Reply with quote

Если с других машин Apache на сервере виден, то в REMOTE_ADDR должен отображаться действительный адрес машины (а не 127.0.0.1). Проверьте скрипты еще раз: может, они что-то не то выводят?

И еще мысль. Возможно, все компьютеры в сети используют какой-то прокси, который как раз установлен на той же машине, что и Apache. В этом случае адрес, действительно, будет 127.0.0.1. Если это HTTP-прокси, то проверьте остальные переменные окружения — возможно, Вам повезет.
Back to top
View user's profile Send private message Send e-mail
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Fri Nov 14, 2003 10:36 am (спустя 12 часов 23 минуты)
   Post subject:
Reply with quote

Прокси действительно стоял, UserGate, я еще, кстати, раньше писал, что он прекрасно работает с локальными сайтами, надо только на нем указать, список местных сайтов и ничего не надо прописывать в hosts на компьютерах, это здорово все упрощает. Правда эта мысль у меня по-поводу прокси была, и я сделал все через файлы hosts, без прокси. Буду дальше эксперементировать, потом напишу результаты. Не хочется делать блокировку через куки, так как это несерьезно.
Back to top
View user's profile Send private message Send e-mail
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Fri Nov 14, 2003 5:42 pm (спустя 7 часов 6 минут)
   Post subject:
Reply with quote

fmr wrote:
не хочется делать блокировку через куки, так как это несерьезно
Почему бы и нет ? Cookies + база данных легко решает эту проблему. Я не знаю таких сайтов, которые бы записывали IP-адрес клиента. Потому что он может быть динамиским, или доступ у человека через прокси...
Back to top
View user's profile Send private message Send e-mail
Дмитрий Эсс
Участник форума



Joined: 06 Jul 2003
Posts: 2533
Карма: 3
   поощрить/наказать

Location: Таллинн, Эстония

PostPosted: Fri Nov 14, 2003 8:54 pm (спустя 3 часа 11 минут)
   Post subject:
Reply with quote

yUAC:
Если ты не понял, то речь идёт о лакольной сети и вот, что надо обеспечить...
fmr wrote:
Дело в том, что я делаю тестирование по английскому языка на нескольких машинах и хочу, чтобы после регистрации юзера адрес машины записывался в базу, чтобы нельзя было провести повторную регистрацию на этой машине, пока не сдан тест
Т.е. это сделано, чтобы предтврать жульничество. А куки - метод не надёжный. Ну оставил ты куку, а а пользователь с уровнем iq выше среднего взял её и удалил парой лёгких движений. А по ip в локальной сети определять гораздо надёжнее.
Back to top
View user's profile Send private message Send e-mail
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Fri Nov 14, 2003 10:17 pm (спустя 1 час 22 минуты)
   Post subject:
Reply with quote

Конечно, речь идет только о локальной сети, а не в инете. Там из этого ничего бы не получилось. А в локалке такая блокировка была бы надежнее куков
Back to top
View user's profile Send private message Send e-mail
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Fri Nov 14, 2003 10:38 pm (спустя 21 минуту)
   Post subject:
Reply with quote

Есть еще такое понятие, как HTTP-авторизация. Пользователь при входе вводит логин и пароль (их браузер запрашивает с помощью специального окна).
Code (php): скопировать код в буфер обмена
define (www.php.net/define)(AdmName,"admin");   //
define (www.php.net/define)(AdmPass,"admin");   //

//
function Authenticate($realm="Admin authentication",$nm=AdmName,$pass=AdmPass)
 { global (www.php.net/global) $COMSPEC,$PHP_AUTH_USER,$PHP_AUTH_PW; if(isSet (www.php.net/isset)($COMSPEC)) return;
   if($PHP_AUTH_USER!=$nm||$PHP_AUTH_PW!=$pass)
    { Header (www.php.net/header)("WWW-Authenticate: Basic realm=\"$realm\"");
      Header (www.php.net/header)("HTTP/1.0 401 Unauthorized");
      exit (www.php.net/exit);
    } 
  }
Back to top
View user's profile Send private message Send e-mail
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Sat Nov 15, 2003 1:19 am (спустя 2 часа 40 минут)
   Post subject:
Reply with quote

Дмитрий Эсс wrote:
а пользователь с уровнем iq выше среднего взял её и удалил парой лёгких движений
И чего после этого ? Ему придется либо заново войти, либо заново зарегиться. В любом случае ему же хуже.

Last edited by Юрий Насретдинов on Sat Nov 15, 2003 7:55 pm; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail
Ant
Сотрудник «Лаборатории»



Joined: 17 Jun 2003
Posts: 6840
Карма: 129
   поощрить/наказать


PostPosted: Sat Nov 15, 2003 2:31 pm (спустя 13 часов 12 минут)
   Post subject:
Reply with quote

yUAC wrote:
Ему придется либо заново войти, либо заново зарегиться. В любом случае ему же хуже.
От этого пользователю совсем не хуже, а даже лучше: данные то его сбрасываются, а от того, что он перерегистрируется... долго ли? (;

Cookies, ИМХО, вообще не для защиты нужны, а для сохранения определнённых настроек. Если их и использовать в роли защиты, то только в комплексном подходе. Надеятся же только на них просто бессмысленно.
Back to top
View user's profile Send private message Send e-mail
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Sat Nov 15, 2003 7:58 pm (спустя 5 часов 26 минут)
   Post subject:
Reply with quote

Дмитрий Котеров wrote:
 Пользователь при входе вводит логин и пароль
Откуда он их возьмет ? Мне немного непонятно, откуда пользователь получит логин и пароль. В таком случае пользователя нужно зарегистрировать до того, как он будет сдавать тест. Как-то стран6но получается.
Back to top
View user's profile Send private message Send e-mail
Ant
Сотрудник «Лаборатории»



Joined: 17 Jun 2003
Posts: 6840
Карма: 129
   поощрить/наказать


PostPosted: Sat Nov 15, 2003 8:37 pm (спустя 38 минут)
   Post subject:
Reply with quote

Вообще тема в оффтопик зашла! Тема, кстати, была про IP а не про cookie.
yUAC wrote:
Откуда он их возьмет ?
Их вообще пока нет! Это ДК предложил такую систему. Но пока вопрос был:
fmr wrote:
хочу, чтобы после регистрации юзера адрес машины записывался в базу, чтобы нельзя было провести повторную регистрацию на этой машине, пока не сдан тест
Если это дело прописывать в cookies, то всё может закончиться плачевно.
Back to top
View user's profile Send private message Send e-mail
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Sat Nov 15, 2003 10:54 pm (спустя 2 часа 16 минут)
   Post subject:
Reply with quote

Задача вот какая была поставлена. Юзеру открывается страница с кнопочкой, никаких форм вообще не видно. Как только нажимается кнопочка, начинается отсчет времени и формы для ответов становятся видны. Надо было сделать так, чтобы задание не было видно до начала отсчета, а то можно не спеша все почитать, а потом зарегестрироваться еще раз и сдавать тест. Вот после нажатия кнопочки с заданием и нужна блокировка. По-моему, в этой ситуации лучше всего было бы определить адрес машины и разблокировать ее только после нажатия последней кнопки (тест в несколько уровней)
Back to top
View user's profile Send private message Send e-mail
Дмитрий Эсс
Участник форума



Joined: 06 Jul 2003
Posts: 2533
Карма: 3
   поощрить/наказать

Location: Таллинн, Эстония

PostPosted: Sat Nov 15, 2003 11:16 pm (спустя 22 минуты)
   Post subject:
Reply with quote

fmr:
Можно выдавать для каждого теста уникальный одноразовый пароль. Можно просить при генерации скриптом пароля ввести какие-то данные, например, ФИО. Записывать в БД эти данные и выданный пароль, после чего из той же базы брать данные, если был введён сгенерированный пароль. Так можно контролировать количество заходов одним пользователем. Вписывать чужие данные просто не имеет смысла, если это будет сделано то будет заметно. Сеть то локальная, и круг пользователей ограничен.
Back to top
View user's profile Send private message Send e-mail
fmr
Участник форума



Joined: 26 Mar 2003
Posts: 92
Карма: 1
   поощрить/наказать

Location: Украина, Киев

PostPosted: Sun Nov 16, 2003 8:37 am (спустя 9 часов 21 минуту)
   Post subject:
Reply with quote

Это вариант, если с адресами не получится. Спасибо
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML